МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
ІНСТИТУТ КОМП’ЮТЕРНИХ НАУК ТА ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ
Кафедра “Системи автоматизованого проектування”
/
Звіт
до лабораторної роботи №7
на тему:
«ВИВЧЕННЯ БІБЛІОТЕКИ ПРИКЛАДНИХ ПРОГРАМ NLTK, ДЛЯ ОПРАЦЮВАННЯ ТЕКСТІВ ПРИРОДНОЮ МОВОЮ.
СТРУКТУРНЕ ПРОГРАМУВАННЯ МОВОЮ PYTHON (частина1).»
МЕТА
Вивчення основ програмування на мові Python. Вивчення основ структурного програмування мовою Python. Повторення та закріплення знань отриманих при виконанні попередніх лабораторних робіт. Покращення загальних навичок у програмуванні.
ТЕОРЕТИЧНІ ВІДОМОСТІ
1. Основи програмування
1.3 Умовні твердження(висловлювання)
В частині умов if твердження, не пусті стрічки вважаються «true», а пусті стрічки чи списки вважаються «false» і не обробляються.
Тому, не потрібно використовувати додаткову перевірку if len(element) > 0: в умові.
Для пояснення відмінностей між використанням if...elif та використання декількох if тверджень розглянемо наступний приклад:
Якщо if вираз твердження задовольняється то, Python ніколи не буде робити спроби перевірити чи справджується elif вираз. На екран «2» ніколи не буде виведено. Навпаки, якщо замінити elif на if, на екран буде виведено і «1» і «2». elif вираз потенційно є більш інформативний ніж простий if вираз; коли він справджується то це означає не тільки те що умова задовольняється але і те, що умова if виразу не справджується.
Вбудовані функції all() та any() можуть бути застосовані до списку або іншої послідовності для перевірки, чи всі, або будь-який з елементів задовольняють умову:
2. Послідовності
В попередніх прикладах використовувалися наступні послідовності: стрічки, списки та кортежі. Змінна, тип якої – кортеж, створюється за допомогою ком (#1) і переважно обмежується дужками. В попередніх лабораторних роботах кортежі використовувалися для представлення пар значень (елементів послідовності з двох членів). Зазвичай, кортежі можуть містити будь-яку кількість елементів та членів. Аналогічно до списків та стрічок, елементи кортежів можуть бути проіндексовані (#2), до них можна доступитися за допомогою зрізів (#3) та визначити кількість елементів (#4). Кортежі створюються за допомогою ком (оператор - кома). Для створення кортежу, який містить єдиний елемент 'snark' , кома ставиться безпосередньо після цього елементу 'snark',. Пустий кортеж створюється за допомогою пустих дужок t=().
Виконати самостійно. Визначити набір, використовуючи set(text). Що станеться, якщо перетворити цей набір в список list(set(text)) або проітерувати його елементи.
2.1 Операції над послідовностями різних типів
Елементи послідовності s можна обробляти почергово (здійснювати над ними ітерації, ітерувати) різними способами, основні з яких, наведено у таблиці 1.
Послідовності різних типів можна перетворювати між собою. Наприклад, tuple(s) – перетворення послідовності будь-якого типу в кортеж, list(s) – перетворення послідовності будь-якого типу в список. Для перетворення списку стрічок в єдину стрічку потрібно використовувати функцію join(), наприклад, ':'.join(words).
Деякі інші об’єкти, такі як FreqDist, також можуть бути перетворені в послідовність, використовуючи list(), а також їх можна й ітерувати. В наступному прикладі показано, як можна використовувати кортежі для переміщення елементів в списку. Круглі дужки, при створенні кортежів можна опустити, оскільки кома має вищий пріоритет ніж оператор присвоювання, але запис з дужками є більш зрозумілий ((words[2], words[3], words[4]) = (words[3], words[4], words[2])). Аналогічного результату можна досягнути і традиційним шляхом, без використання кортежів, але тоді виникає необхідність у створенні нової змінної tmp. Python, за допомогою таких функцій, як sorted() and reversed(), дозволяє змінювати порядок елементів у послідовностях. Також існують функції, які модифікують структуру послідовностей, що знаходить широке використання при обробці мови. Функція, zip() приймає елементи двох або...